Jak dynamicznie przekierowywać subdomeny do katalogów? [RewriteEngine]
Jeśli chcemy utworzyć wiele subdomen w naszym serwisie, tak by każda z nich związana była z innym katalogiem na serwerze (mogą to na przykład być katalogi poszczególnych użytkowników), każdą nową subdomenę trzeba dodawać ręcznie do konfiguracji. Sprytne wykorzystanie RewriteEngine pozwala obejść ten problem.
W pliku konfiguracyjnym serwera Apache (apache.conf lub httpd.conf – jeśli mamy dostęp do globalnej konfiguracji, lub .htaccess, jeśli korzystamy ze współdzielonego hostingu), ustalamy opcję DocumentRoot, określającą, gdzie kierowane są wszystkie żądania. Tam będą znajdowały się wszystkie katalogi wszystkich subdomen.
DocumentRoot /var/www/
Następnie otwieramy sekcję VirtualHost – w niej określimy nazwę serwera i reguły, według których RewriteEngine będzie przepisywał domenowe adresy. Wcześniej jednak zdefiniujemy opcje ServerAlias i ServerName – czyli nazwa domenowa, skonfigurowana na serwerze DNS, na którym domena jest utrzymywana.
ServerName www.mojastrona.pl
ServerAlias www.mojastrona.pl
Po włączeniu RewriteEngine, definiujemy następujące reguły:
RewriteCond %{HTTP_HOST} ^mojastrona.pl
RewriteRule ^(.*)$ /var/www/$1 [L]
W ten sposób przekierowujemy adres bez subdomen do katalogu /var/www/.
RewriteCond %{HTTP_HOST} ^www.*
RewriteRule ^(.*)$ /var/www/$1 [L]
W ten sposób zabezpieczamy się, aby typowa subdomena www prowadziła do tego samego katalogu, co główna domena,
RewriteCond %{HTTP_HOST} ^(.*)\.mojastrona\.pl
RewriteRule ^(.*)$ /%1/$1 [L]
Finalna reguła pozwala nam na przekierowanie z każdej subdomeny do odpowiedniego podkatalogu.
Teraz wystarczy tylko ustawić domenę z wieloznacznikiem w DNS (wildcard). Jak to dokładnie zrobić – zależy od hostera i panelu konfiguracyjnego ale generalnie w pliku strefy powinien znaleźć się wpis taki jak
*.mojastrona.pl CNAME 3600 mojastrona.pl
Teraz adres www.mojadomena.pl będzie prowadził do katalogu /var/www/, zaś adres alfa.mojadomena.pl będzie prowadził do katalogu /var/www/alfa.
Cały plik konfiguracyjny wygląda więc następująco:
DocumentRoot /var/www/
<VirtualHost *>
ServerAlias www.mojadomena.pl
ServerName www.mojadomena.pl
RewriteEngine on
RewriteCond %{HTTP_HOST} ^mojadomena.pl
RewriteRule ^(.*)$ /var/www/$1 [L]
RewriteCond %{HTTP_HOST} ^www.*
RewriteRule ^(.*)$ /var/www/$1 [L]
RewriteCond %{HTTP_HOST} ^(.*)\.mojadomena\.pl
RewriteRule ^(.*)$ /%1/$1 [L]
</VirtualHost>
Polecamy
Reklama
Popularne
Pobierałeś pirackie pliki? Uważaj! Kontrole antypirackie w domach użytkowników to codzienność
36
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1455
Debata w sprawie ACTA: internauci spodziewali się chyba czegoś innego
14
Wynalazca WWW przed sądem: walczy tam o wolny dostęp do webowych technologii dla każdego
8
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
Internet w EU bez Facebooka i Google? Firmy nie mają wyboru: albo się dostosują, albo…
10
Zaktualizuj PHP do wersji 5.4, zyskasz za darmo nawet o kilkudziesiąt procent wyższą wydajność aplikacji
6
MSWiA zamówiło narzędzia do „złamania” Tora i podsłuchiwania internautów. Czy złamało przy tym prawo?
89
[Aktualizacja] Facebook zablokował Demotywatory.pl. W czym zawiniły?
36
FBI zamknęło Megaupload. Anonimowi dali się sprowokować. Teraz ich akcja uzasadni potrzebę SOPA?
17
Pobieraczek.pl pozwie internautów, którzy nie chcą płacić abonamentu
1455
Programowanie w środowisku Android – wprowadzenie do projektowania aplikacji dla urządzeń mobilnych
15
„Donald matole, twój rząd dopadną kibole” – hakerska elita przyłącza się do walki z ACTA
23
Pobierałeś pirackie pliki? Uważaj! Kontrole antypirackie w domach użytkowników to codzienność
36
Społeczność
WebDev @slawek22
OK. Rozumiem i wiem, że koncerny stosują regionalizacje i nie...
slawek22 >są inne rodzime serwisy VOD z legalny filmami
WebDev no fakt... jeśli...
WebDev @BLACK BEAR®
"bo denerwujesz mi ludzi na forum” lool
Minister Zdrowia...
tobas ClickShop bardzo wolno działa!!!
Nie dajcie się nabrać na wygląd i...
blackbear @WebDev, widzę że muszę Ci rozjaśnić we łbie. Czytaj więc i nie pisz...
Jay Brak obsługi aplikacji x86/x64 ze zwykłych desktopów to kręcenie na siebie...
WebDev @slawek22
Tak jak ze wszystkim tak i z prawem własności można przesadzić...
- gardius: Dobra hurtownia sportowa (1)
- gardius: Tanie książki gdzie warto kupować? (1)
- Najdmen.pl: PROMOCJA, 500 DOMEN .EU ZA 1 PLN NETTO ! (1)
- VMLine: [Oferta] Serwery VPS Xen-HVM/OpenVZ z darmową administracją (2)
- Marek: Generowanie PDFa (2)
- Marek: problem z menu (2)
- Marek: Własne checkboxy w HTML,CSS (1)
Polecane książki
Praca
Czytaj Webhosting
Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.
Zarejestruj domenę
Sprawdź dostępność swojej domeny:
| .pl: | 0 zł | .com: | 19.90 zł | |
|---|---|---|---|---|
| .com.pl: | 0 zł | .eu: | 19.90 zł |








